home *** CD-ROM | disk | FTP | other *** search
- '===========================================================================
- '3DMAP 1.0
- 'Copyright (C) 1994 by Kerry B. Rogers
- 'All Rights Reserved
- '===========================================================================
- 'The main purpose of 3DMAP is to show one method for manipulating graphics
- 'offscreen while accomplishing the rare ability of having "buttons" onscreen
- 'that are not restricted to four sides. Although slow, speed is not really
- 'noticable on a 486-66 (the intended platform).
- '
- 'This type of screen is very useful for educational or demographic software
- '(besides the fact that it IS appealing to look at.) I hope you enjoy the
- 'source code and - PLEASE - drop me a line on CompuServe at:
- '
- ' Kerry Rogers 71514,735
- '
- '===========================================================================
- Option Explicit
- Declare Function ExtFloodFill% Lib "GDI" (ByVal hDC%, ByVal i%, ByVal i%, ByVal w&, ByVal i%)
- Declare Function GetPixel& Lib "GDI" (ByVal hDC%, ByVal X%, ByVal Y%)
- Declare Function BitBlt Lib "GDI" (ByVal hDestDC%, ByVal X%, ByVal Y%, ByVal nWidth%, ByVal nHeight%, ByVal hSrcDC%, ByVal XSrc%, ByVal YSrc%, ByVal dwRop&) As Integer
- Global gsStateName$() 'Storage array for all state names
- Global giaX%(), giaY%() 'Global Integer Array for static coords
- Global gbMassUpdate% 'Flag indicating need to abort List_Click
- Global giX%, giY% 'Global Integer to pass mouseclick x/y
- Global Const DARK_GRAY = &H808080
- Global Const LITE_GRAY = &HC0C0C0
- Global Const SHOWN_MAP = 0 'Used to swap Shown map
- Global Const HIDDEN_MAP = 1 'Used to swap Hidden map
- Global Const BACKUP_MAP = 2 'Used to swap Backup map
-
- Sub Main ()
- '===========================================================================
- '3DMAP 1.0
- 'Copyright (C) 1994 by Kerry B. Rogers
- 'All Rights Reserved
- '===========================================================================
- 'The map names and the coordinates for the pixel that is checked when
- 'determining a painted area are defined below.
- '===========================================================================
- Dim i%
- Screen.MousePointer = 11 'Hourglass
- ReDim gsStateName(0 To 60), giaX(0 To 60), giaY(0 To 60)
- gsStateName(0) = "Alabama": giaX(0) = 362: giaY(0) = 201
- gsStateName(1) = "Alaska": giaX(1) = 79: giaY(1) = 247
- gsStateName(2) = "Arizona": giaX(2) = 118: giaY(2) = 181
- gsStateName(3) = "Arkansas": giaX(3) = 304: giaY(3) = 187
- gsStateName(4) = "California": giaX(4) = 45: giaY(4) = 142
- gsStateName(5) = "Colorado": giaX(5) = 179: giaY(5) = 139
- gsStateName(6) = "Connecticut": giaX(6) = 468: giaY(6) = 83
- gsStateName(7) = "D.C. (Washington)": giaX(7) = 484: giaY(7) = 143
- gsStateName(8) = "Delaware": giaX(8) = 454: giaY(8) = 119
- gsStateName(9) = "Florida": giaX(9) = 425: giaY(9) = 247
- gsStateName(10) = "Georgia": giaX(10) = 393: giaY(10) = 195
- gsStateName(11) = "Hawaii": giaX(11) = 146: giaY(11) = 280
- gsStateName(12) = "Idaho": giaX(12) = 105: giaY(12) = 74
- gsStateName(13) = "Illinois": giaX(13) = 328: giaY(13) = 124
- gsStateName(14) = "Indiana": giaX(14) = 355: giaY(14) = 123
- gsStateName(15) = "Iowa": giaX(15) = 289: giaY(15) = 105
- gsStateName(16) = "Kansas": giaX(16) = 245: giaY(16) = 145
- gsStateName(17) = "Kentucky": giaX(17) = 375: giaY(17) = 149
- gsStateName(18) = "Louisiana": giaX(18) = 306: giaY(18) = 224
- gsStateName(19) = "Maine": giaX(19) = 485: giaY(19) = 36
- gsStateName(20) = "Maryland": giaX(20) = 438: giaY(20) = 119
- gsStateName(21) = "Massachusettes": giaX(21) = 468: giaY(21) = 76
- gsStateName(22) = "Michigan": giaX(22) = 361: giaY(22) = 86
- gsStateName(23) = "Minnesota": giaX(23) = 276: giaY(23) = 60
- gsStateName(24) = "Mississippi": giaX(24) = 334: giaY(24) = 207
- gsStateName(25) = "Missouri": giaX(25) = 299: giaY(25) = 145
- gsStateName(26) = "Montana": giaX(26) = 155: giaY(26) = 48
- gsStateName(27) = "Nebraska": giaX(27) = 235: giaY(27) = 114
- gsStateName(28) = "Nevada": giaX(28) = 78: giaY(28) = 125
- gsStateName(29) = "New Hampshire": giaX(29) = 472: giaY(29) = 63
- gsStateName(30) = "New Jersey": giaX(30) = 457: giaY(30) = 109
- gsStateName(31) = "New Mexico": giaX(31) = 171: giaY(31) = 190
- gsStateName(32) = "New York": giaX(32) = 447: giaY(32) = 73
- gsStateName(33) = "North Carolina": giaX(33) = 431: giaY(33) = 161
- gsStateName(34) = "North Dakota": giaX(34) = 228: giaY(34) = 47
- gsStateName(35) = "Ohio": giaX(35) = 384: giaY(35) = 116
- gsStateName(36) = "Oklahoma": giaX(36) = 255: giaY(36) = 181
- gsStateName(37) = "Oregon": giaX(37) = 58: giaY(37) = 68
- gsStateName(38) = "Pensylvania": giaX(38) = 427: giaY(38) = 101
- gsStateName(39) = "Rhode Island": giaX(39) = 478: giaY(39) = 80
- gsStateName(40) = "South Carolina": giaX(40) = 417: giaY(40) = 182
- gsStateName(41) = "South Dakota": giaX(41) = 229: giaY(41) = 80
- gsStateName(42) = "Tennessee": giaX(42) = 364: giaY(42) = 170
- gsStateName(43) = "Texas": giaX(43) = 240: giaY(43) = 227
- gsStateName(44) = "Utah": giaX(44) = 125: giaY(44) = 131
- gsStateName(45) = "Vermont": giaX(45) = 462: giaY(45) = 57
- gsStateName(46) = "Virginia": giaX(46) = 430: giaY(46) = 139
- gsStateName(47) = "Washington": giaX(47) = 72: giaY(47) = 32
- gsStateName(48) = "West Virginia": giaX(48) = 407: giaY(48) = 134
- gsStateName(49) = "Wisconsin": giaX(49) = 319: giaY(49) = 78
- gsStateName(50) = "Wyoming": giaX(50) = 166: giaY(50) = 94
- gsStateName(51) = "Alaska": giaX(51) = 47: giaY(51) = 272
- gsStateName(52) = "Alaska": giaX(52) = 40: giaY(52) = 273
- gsStateName(53) = "Alaska": giaX(53) = 35: giaY(53) = 270
- gsStateName(54) = "Alaska": giaX(54) = 29: giaY(54) = 268
- gsStateName(55) = "D.C. (Washington)": giaX(55) = 479: giaY(55) = 146
- gsStateName(56) = "Hawaii": giaX(56) = 139: giaY(56) = 274
- gsStateName(57) = "Hawaii": giaX(57) = 132: giaY(57) = 270
- gsStateName(58) = "Hawaii": giaX(58) = 124: giaY(58) = 266
- gsStateName(59) = "Hawaii": giaX(59) = 115: giaY(59) = 268
- gsStateName(60) = "Michigan": giaX(60) = 339: giaY(60) = 59
- frmMapMain.Show
- Screen.MousePointer = 0 'Normal
- End Sub
-
-